from itsdangerous import TimedJSONWebSignatureSerializer as TJWSerializer
from django.conf import settings

# 1. 加密openid
def generate_sign_openid(openid):
    # 1.创建TJWSerializer对象
    serializer = TJWSerializer(secret_key=settings.SECRET_KEY,expires_in=300)

    # 2.加密数据
    sign_openid = serializer.dumps({"openid": openid})

    # 3.返回数据
    return sign_openid.decode()

# 2. 解密openid
def decode_sign_openid(sign_openid):
    # 1.创建TJWSerializer对象
    serializer = TJWSerializer(secret_key=settings.SECRET_KEY,expires_in=300)

    # 2.解密数据
    try:
        dict_data = serializer.loads(sign_openid)
    except Exception as e:
        return None

    # 3. 返回openid
    return dict_data.get("openid")
